package com.zmn.oms.model.dto.order.pay;

import com.zmn.oms.common.dto.OmsOperator;
import com.zmn.oms.common.dto.OmsRefundRequestDTO;
import lombok.Data;

import java.util.Date;

/**
 * 类描述：
 *
 * @author wangxiaokun
 * @since 2021/10/19 11:23
 */
@Data
public class RefundResultDTO extends OmsOperator {

    /**
     * 平台 1 言而有信，2 啄木鸟
     */
    private Integer plat;

    /**
     * 支付渠道 1 支付宝，2 微信，3 工行  具体见GlobalConsts.PAY_CHANNEL_PLATFORM_
     */
    private Integer channelId;

    /**
     * 支付类型
     */
    private Integer payType;

    /**
     * 商家退款流水号
     */
    private String refundInnerTradeNo;

    /**
     * 支付平台退款流水号
     */
    private String refundOutTradeNo;

    /**
     * 交易单商户流水号(内部流水号)
     */
    private String innerTradeNo;

    /**
     * 交易单支付平台流水号（外部流水号）
     */
    private String outTradeNo;

    /**
     * 退款状态 11发起退款，12退款中，13部分退款，14退款成功，15退款失败, 16退款异常
     */
    private Integer status;

    /**
     * 全额退款 1 部分退款，2 全额退款
     */
    private Integer allRefund;

    /**
     * 退款金额
     */
    private Integer refundAmount;

    /**
     * 退款时间
     */
    private Date refundTime;

    /**
     * 退款对应的交易金额
     */
    private Integer payAmount;

    /**
     * 请求业务数据（json存储）
     */
    private String requestData;

    /**
     * 是否线下退款
     *
     * @see com.zmn.consts.GlobalConsts#YES
     */
    private Integer offLineRefund;

    /**
     * 扩展数据
     */
    private OmsRefundRequestDTO refundRequestDTO;
}
